//
// Created by zx208 on 2024/11/2.
//

#ifndef _LINKEDSTACK_BINARYTREE_H
#define _LINKEDSTACK_BINARYTREE_H

#include "../../define.h"
#include <stdio.h>
#include <stdlib.h>

typedef char BitreeElemType;

typedef struct BiNode{
    BitreeElemType data;
    struct BiNode *lchild, *rchild;
} BiNode, *BiTree;

typedef struct StackNode_BT{
    BiNode data;
    struct StackNode_BT *next;
} StackNode_BT, *LinkedStack_BT;

Status Init_ST(LinkedStack_BT *S);
Status Push_ST(LinkedStack_BT *S, BiNode e);
Status Pop_ST(LinkedStack_BT *S, BiNode *e);
BiNode GetTop_ST(LinkedStack_BT *S);
Status IsEmpty_ST(LinkedStack_BT *S);

#endif //_LINKEDSTACK_BINARYTREE_H
